package com.clt.ess.gjzw.domain;

import java.io.Serializable;

//公安下发数据信息表
public class FilePackage  implements Serializable {
    //备案信息中上传的印章编码，为 14 个字节
    private String yzbm;
    //BASE64 编码的应用维护对称密钥密文，编码前内容遵循 gmt 0018-2012 中 ecc加密数据结构定义，最大为 256 字节
    private String appSymKeyEnc;
    //BASE64 编码的数据加密对称密钥密文，编码前内容遵循 gmt 0018-2012 中 ecc加密数据结构定义，最大为 256 字节
    private String dataSymKeyEnc;
    //公安下发的加密文件，该文件采用base64 编码，使用对称加密算法模式为sm4_ecb，填充方式为 pkcs7,加密文件的格式内容见 B.3，最大不大于 40K
    private String encFile;

    /**
     {
     "yzbm": "印章编码",
     "appSymKeyEnc": "BASE64 编码的应用维护对称密钥密文",
     "dataSymKeyEnc": "BASE64 编码的数据加密对称密钥密文",
     "encFile": "公安下发的加密文件"
     }
     */

    public FilePackage() {
    }

    public FilePackage(String yzbm, String encFile, String appSymKeyEnc, String dataSymKeyEnc) {
        this.yzbm = yzbm;
        this.appSymKeyEnc = appSymKeyEnc;
        this.dataSymKeyEnc = dataSymKeyEnc;
        this.encFile = encFile;
    }

    public String getYzbm() {
        return yzbm;
    }

    public void setYzbm(String yzbm) {
        this.yzbm = yzbm;
    }

    public String getEncFile() {
        return encFile;
    }

    public void setEncFile(String encFile) {
        this.encFile = encFile;
    }

    public String getAppSymKeyEnc() {
        return appSymKeyEnc;
    }

    public void setAppSymKeyEnc(String appSymKeyEnc) {
        this.appSymKeyEnc = appSymKeyEnc;
    }

    public String getDataSymKeyEnc() {
        return dataSymKeyEnc;
    }

    public void setDataSymKeyEnc(String dataSymKeyEnc) {
        this.dataSymKeyEnc = dataSymKeyEnc;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("{");
        sb.append("\"yzbm\":\"")
                .append(yzbm).append('\"');
        sb.append(",\"appSymKeyEnc\":\"")
                .append(appSymKeyEnc).append('\"');
        sb.append(",\"dataSymKeyEnc\":\"")
                .append(dataSymKeyEnc).append('\"');
        sb.append(",\"encFile\":\"")
                .append(encFile).append('\"');
        sb.append('}');
        return sb.toString();
    }
}
